// 1. 前序遍历的第一个节点一定是二叉树的根节点
// 2. 在中序遍历中，根节点把中序遍历分成了两部分，左边部分构成了二叉树的根节点的左子树，右边部分构成了
// 二叉树的根节点的右子树

var buildTree = function (preorder, inorder) {
  if (!preorder.length) return null;
  let index = inorder.indexOf(preorder[0]);
  let left = buildTree(preorder.slice(1, index + 1), inorder.slice(0, index));
  let right = buildTree(preorder.slice(index + 1), inorder.slice(index + 1));
  return { val: preorder[0], left, right };
};
